[INFO] cloning repository https://github.com/barnex/opengl-rust-gravity
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/barnex/opengl-rust-gravity" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbarnex%2Fopengl-rust-gravity", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbarnex%2Fopengl-rust-gravity'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b280bef75088adc585df9aae129c6ad38c9626d7
[INFO] checking barnex/opengl-rust-gravity against master#e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682 for beta-170-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbarnex%2Fopengl-rust-gravity" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/barnex/opengl-rust-gravity on toolchain e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/barnex/opengl-rust-gravity
[INFO] finished tweaking git repo https://github.com/barnex/opengl-rust-gravity
[INFO] tweaked toml for git repo https://github.com/barnex/opengl-rust-gravity written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/barnex/opengl-rust-gravity already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bfcca6644b10262077af598f849a1caa7bf98ee31d12b2f1776e20f287cd1198
[INFO] running `Command { std: "docker" "start" "-a" "bfcca6644b10262077af598f849a1caa7bf98ee31d12b2f1776e20f287cd1198", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bfcca6644b10262077af598f849a1caa7bf98ee31d12b2f1776e20f287cd1198", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfcca6644b10262077af598f849a1caa7bf98ee31d12b2f1776e20f287cd1198", kill_on_drop: false }`
[INFO] [stdout] bfcca6644b10262077af598f849a1caa7bf98ee31d12b2f1776e20f287cd1198
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 35ee9725599cbc2b3bcb40a9e07c090811aa1471d8c5f378a477ac3ea14b5513
[INFO] running `Command { std: "docker" "start" "-a" "35ee9725599cbc2b3bcb40a9e07c090811aa1471d8c5f378a477ac3ea14b5513", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.79
[INFO] [stderr]    Compiling xml-rs v0.8.3
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling pkg-config v0.3.19
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling nix v0.18.0
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]     Checking libloading v0.6.4
[INFO] [stderr]    Compiling rayon-core v1.8.1
[INFO] [stderr]     Checking smallvec v1.4.2
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]     Checking dlib v0.4.2
[INFO] [stderr]    Compiling rayon v1.4.1
[INFO] [stderr]     Checking once_cell v1.4.1
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling nom v5.1.2
[INFO] [stderr]    Compiling num-iter v0.1.41
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling num-rational v0.3.0
[INFO] [stderr]     Checking scoped-tls v1.0.0
[INFO] [stderr]    Compiling getrandom v0.1.15
[INFO] [stderr]    Compiling syn v1.0.45
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking weezl v0.1.1
[INFO] [stderr]    Compiling wayland-sys v0.28.1
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking ttf-parser v0.6.2
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]     Checking deflate v0.8.6
[INFO] [stderr]     Checking tiff v0.5.0
[INFO] [stderr]     Checking crossbeam-channel v0.4.4
[INFO] [stderr]     Checking gif v0.11.1
[INFO] [stderr]     Checking bytemuck v1.4.1
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.4
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking instant v0.1.7
[INFO] [stderr]    Compiling wayland-scanner v0.28.1
[INFO] [stderr]     Checking png v0.16.7
[INFO] [stderr]     Checking ppv-lite86 v0.2.10
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking lock_api v0.4.1
[INFO] [stderr]    Compiling winit v0.23.0
[INFO] [stderr]     Checking lazycell v1.3.0
[INFO] [stderr]     Checking gl_vec v0.1.0 (/opt/rustwide/workdir/gl_vec)
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.7
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.5
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking net2 v0.2.35
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking parking_lot_core v0.8.0
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking owned_ttf_parser v0.6.0
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking rusttype v0.9.2
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking parking_lot v0.11.0
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking andrew v0.3.1
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling wayland-client v0.28.1
[INFO] [stderr]    Compiling wayland-protocols v0.28.1
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking xcursor v0.3.2
[INFO] [stderr]     Checking jpeg-decoder v0.1.20
[INFO] [stderr]     Checking image v0.23.10
[INFO] [stderr]     Checking gl_safe v0.1.0 (/opt/rustwide/workdir/gl_safe)
[INFO] [stderr]     Checking wayland-commons v0.28.1
[INFO] [stderr]     Checking calloop v0.6.5
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:54:83
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let result = unsafe { gl::GetAttribLocation(program, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                          --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                          |
[INFO] [stdout]    |                                                          this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:54:83
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let result = unsafe { gl::GetAttribLocation(program, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                          --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                          |
[INFO] [stdout]    |                                                          this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:63:84
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let result = unsafe { gl::GetUniformLocation(program, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                           --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                           |
[INFO] [stdout]    |                                                           this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:63:84
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let result = unsafe { gl::GetUniformLocation(program, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                           --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                           |
[INFO] [stdout]    |                                                           this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:72:98
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let result = unsafe { gl::GetUniformBlockIndex(program, CString::new(uniformBlockName).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                             --------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                             |
[INFO] [stdout]    |                                                             this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:72:98
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let result = unsafe { gl::GetUniformBlockIndex(program, CString::new(uniformBlockName).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                             --------------------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                             |
[INFO] [stdout]    |                                                             this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:89:107
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let result = unsafe { gl::GetProgramResourceIndex(program, programInterface, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                                                  --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                                                  |
[INFO] [stdout]    |                                                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> gl_safe/src/dsa_program.rs:89:107
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let result = unsafe { gl::GetProgramResourceIndex(program, programInterface, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]    |                                                                                  --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                                                  |
[INFO] [stdout]    |                                                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> gl_safe/src/safewrappers.rs:153:86
[INFO] [stdout]     |
[INFO] [stdout] 153 |     unsafe { gl::BindFragDataLocation(program, colorNumber, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]     |                                                             --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> gl_safe/src/safewrappers.rs:153:86
[INFO] [stdout]     |
[INFO] [stdout] 153 |     unsafe { gl::BindFragDataLocation(program, colorNumber, CString::new(name).unwrap().as_ptr()) };
[INFO] [stdout]     |                                                             --------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking gl_obj v0.1.0 (/opt/rustwide/workdir/gl_obj)
[INFO] [stdout] warning: field `dimensionality` is never read
[INFO] [stdout]  --> gl_obj/src/texture.rs:9:2
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 9 |     dimensionality: u8,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Texture` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dimensionality` is never read
[INFO] [stdout]  --> gl_obj/src/texture.rs:9:2
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 9 |     dimensionality: u8,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Texture` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking wayland-cursor v0.28.1
[INFO] [stderr]     Checking wayland-egl v0.28.1
[INFO] [stderr]    Compiling structopt-derive v0.4.13
[INFO] [stderr]     Checking gl_img v0.1.0 (/opt/rustwide/workdir/gl_img)
[INFO] [stderr]     Checking structopt v0.3.20
[INFO] [stderr]     Checking grav3_lib v0.1.0 (/opt/rustwide/workdir/grav3_lib)
[INFO] [stdout] error[E0463]: can't find crate for `gl_safe`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | extern crate gl_safe;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `gl_safe`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | extern crate gl_safe;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `gl_win`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | extern crate gl_win;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `gl_win`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | extern crate gl_win;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/texture.vert: No such file or directory (os error 2)
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Shader::new_vert(include_str!("texture.vert")),
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/texture.vert: No such file or directory (os error 2)
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Shader::new_vert(include_str!("texture.vert")),
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/draw.frag: No such file or directory (os error 2)
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |             Shader::new_frag(include_str!("draw.frag")),
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/draw.frag: No such file or directory (os error 2)
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |             Shader::new_frag(include_str!("draw.frag")),
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/decay.glsl: No such file or directory (os error 2)
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:102:32
[INFO] [stdout]     |
[INFO] [stdout] 102 |             p_decay: Self::compute_prog(include_str!("decay.glsl")),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/density.glsl: No such file or directory (os error 2)
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:103:34
[INFO] [stdout]     |
[INFO] [stdout] 103 |             p_density: Self::compute_prog(include_str!("density.glsl")),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/decay.glsl: No such file or directory (os error 2)
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:102:32
[INFO] [stdout]     |
[INFO] [stdout] 102 |             p_decay: Self::compute_prog(include_str!("decay.glsl")),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read grav3_lib/src/bin/density.glsl: No such file or directory (os error 2)
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:103:34
[INFO] [stdout]     |
[INFO] [stdout] 103 |             p_density: Self::compute_prog(include_str!("density.glsl")),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `grav3`
[INFO] [stdout]  --> grav3_lib/src/bin/grav3_gl.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use grav3::prelude::*;
[INFO] [stdout]   |     ^^^^^ use of undeclared crate or module `grav3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `grav3`
[INFO] [stdout]  --> grav3_lib/src/bin/grav3_gl.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use grav3::prelude::*;
[INFO] [stdout]   |     ^^^^^ use of undeclared crate or module `grav3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use glutin::event::ElementState;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 20 | use gl_win::event::ElementState;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use glutin::event::MouseButton;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 21 | use gl_win::event::MouseButton;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use glutin::event::ElementState;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 20 | use gl_win::event::ElementState;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use glutin::event::MouseScrollDelta;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 22 | use gl_win::event::MouseScrollDelta;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use glutin::event::MouseButton;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 21 | use gl_win::event::MouseButton;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use glutin::event::VirtualKeyCode;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 23 | use gl_win::event::VirtualKeyCode;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use glutin::event::MouseScrollDelta;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 22 | use gl_win::event::MouseScrollDelta;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glutin`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use glutin::event::VirtualKeyCode;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `glutin`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 23 | use gl_win::event::VirtualKeyCode;
[INFO] [stdout]    |     ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `grav3::prelude::*`, `gl_obj`, `glutin::event::ElementState`, `glutin::event::MouseButton`, `glutin::event::MouseScrollDelta`, `glutin::event::VirtualKeyCode`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:1:5
[INFO] [stdout]    |
[INFO] [stdout] 1  | use grav3::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 | use gl_obj::*;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `gl_obj`
[INFO] [stdout] ...
[INFO] [stdout] 20 | use glutin::event::ElementState;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 | use glutin::event::MouseButton;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 | use glutin::event::MouseScrollDelta;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 | use glutin::event::VirtualKeyCode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `grav3::prelude::*`, `gl_obj`, `glutin::event::ElementState`, `glutin::event::MouseButton`, `glutin::event::MouseScrollDelta`, `glutin::event::VirtualKeyCode`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:1:5
[INFO] [stdout]    |
[INFO] [stdout] 1  | use grav3::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 | use gl_obj::*;
[INFO] [stdout]    |     ^^^^^^ use of undeclared crate or module `gl_obj`
[INFO] [stdout] ...
[INFO] [stdout] 20 | use glutin::event::ElementState;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 | use glutin::event::MouseButton;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 | use glutin::event::MouseScrollDelta;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 | use glutin::event::VirtualKeyCode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `dvec2` in this scope
[INFO] [stdout]  --> grav3_lib/src/bin/grav3_gl.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | type vec = dvec2;
[INFO] [stdout]   |            ^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 1 + use grav3_lib::prelude::dvec2;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `dvec2` in this scope
[INFO] [stdout]  --> grav3_lib/src/bin/grav3_gl.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | type vec = dvec2;
[INFO] [stdout]   |            ^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 1 + use grav3_lib::prelude::dvec2;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 |     p_render: Program,
[INFO] [stdout]    |               ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 |     p_render: Program,
[INFO] [stdout]    |               ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |     p_density: Program,
[INFO] [stdout]    |                ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |     p_density: Program,
[INFO] [stdout]    |                ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:81:11
[INFO] [stdout]    |
[INFO] [stdout] 81 |     p_decay: Program,
[INFO] [stdout]    |              ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:81:11
[INFO] [stdout]    |
[INFO] [stdout] 81 |     p_decay: Program,
[INFO] [stdout]    |              ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Texture` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:82:7
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pos: Texture,
[INFO] [stdout]    |          ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Texture` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:82:7
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pos: Texture,
[INFO] [stdout]    |          ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Texture` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:83:11
[INFO] [stdout]    |
[INFO] [stdout] 83 |     density: Texture,
[INFO] [stdout]    |              ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Texture` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:83:11
[INFO] [stdout]    |
[INFO] [stdout] 83 |     density: Texture,
[INFO] [stdout]    |              ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `VertexArray` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:84:7
[INFO] [stdout]    |
[INFO] [stdout] 84 |     vao: VertexArray,
[INFO] [stdout]    |          ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `VertexArray` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:84:7
[INFO] [stdout]    |
[INFO] [stdout] 84 |     vao: VertexArray,
[INFO] [stdout]    |          ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uvec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:114:22
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn vec_to_tex(size: uvec2, data: &[vec2]) -> Texture {
[INFO] [stdout]     |                         ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uvec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:114:22
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn vec_to_tex(size: uvec2, data: &[vec2]) -> Texture {
[INFO] [stdout]     |                         ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:114:37
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 114 |     fn vec_to_tex(size: uvec2, data: &[vec2]) -> Texture {
[INFO] [stdout]     |                                        ^^^^ help: a type alias with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:114:37
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 114 |     fn vec_to_tex(size: uvec2, data: &[vec2]) -> Texture {
[INFO] [stdout]     |                                        ^^^^ help: a type alias with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Texture` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:114:47
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn vec_to_tex(size: uvec2, data: &[vec2]) -> Texture {
[INFO] [stdout]     |                                                  ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Texture` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:114:47
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn vec_to_tex(size: uvec2, data: &[vec2]) -> Texture {
[INFO] [stdout]     |                                                  ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:118:44
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec2>, Vec<vec2>) {
[INFO] [stdout]     |                                               ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec>, Vec<vec2>) {
[INFO] [stdout]     |                                               ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:118:44
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec2>, Vec<vec2>) {
[INFO] [stdout]     |                                               ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec>, Vec<vec2>) {
[INFO] [stdout]     |                                               ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:118:55
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec2>, Vec<vec2>) {
[INFO] [stdout]     |                                                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec2>, Vec<vec>) {
[INFO] [stdout]     |                                                          ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:118:55
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec2>, Vec<vec2>) {
[INFO] [stdout]     |                                                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn initial_particles(args: &Args) -> (Vec<vec2>, Vec<vec>) {
[INFO] [stdout]     |                                                          ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:121:23
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 121 |         let mut pos = Vec::<vec2>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 121 |         let mut pos = Vec::<vec>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:121:23
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 121 |         let mut pos = Vec::<vec2>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 121 |         let mut pos = Vec::<vec>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:122:23
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 122 |         let mut vel = Vec::<vec2>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut vel = Vec::<vec>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:122:23
[INFO] [stdout]     |
[INFO] [stdout] 4   | type vec = dvec2;
[INFO] [stdout]     | ----------------- similarly named type alias `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 122 |         let mut vel = Vec::<vec2>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a type alias with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut vel = Vec::<vec>::with_capacity((w * h) as usize);
[INFO] [stdout]     |                             ~~~
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 90  | impl<vec2> State {
[INFO] [stdout]     |     ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn draw(&self, _w: &Window) {
[INFO] [stdout]     |                         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn draw(&self, _w: &Window) {
[INFO] [stdout]     |                         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:167:20
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn exec(&self, p: Program) {
[INFO] [stdout]     |                       ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:167:20
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn exec(&self, p: Program) {
[INFO] [stdout]     |                       ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:193:42
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn on_redraw_requested(&mut self, win: &Window) {
[INFO] [stdout]     |                                             ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:193:42
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn on_redraw_requested(&mut self, win: &Window) {
[INFO] [stdout]     |                                             ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:208:32
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn on_user_event(&self, win: &Window) {
[INFO] [stdout]     |                                   ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:208:32
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn on_user_event(&self, win: &Window) {
[INFO] [stdout]     |                                   ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:241:32
[INFO] [stdout]     |
[INFO] [stdout] 241 |     fn compute_prog(src: &str) -> Program {
[INFO] [stdout]     |                                   ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:241:32
[INFO] [stdout]     |
[INFO] [stdout] 241 |     fn compute_prog(src: &str) -> Program {
[INFO] [stdout]     |                                   ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:245:15
[INFO] [stdout]     |
[INFO] [stdout] 245 |     fn vao(prog: Program) -> VertexArray {
[INFO] [stdout]     |                  ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Program` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:245:15
[INFO] [stdout]     |
[INFO] [stdout] 245 |     fn vao(prog: Program) -> VertexArray {
[INFO] [stdout]     |                  ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `VertexArray` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:245:27
[INFO] [stdout]     |
[INFO] [stdout] 245 |     fn vao(prog: Program) -> VertexArray {
[INFO] [stdout]     |                              ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `VertexArray` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:245:27
[INFO] [stdout]     |
[INFO] [stdout] 245 |     fn vao(prog: Program) -> VertexArray {
[INFO] [stdout]     |                              ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `EventLoop` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:276:23
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn run_event_loop(ev: EventLoop, win: Arc<Window>, mut s: State) {
[INFO] [stdout]     |                       ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `EventLoop` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:276:23
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn run_event_loop(ev: EventLoop, win: Arc<Window>, mut s: State) {
[INFO] [stdout]     |                       ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:276:43
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn run_event_loop(ev: EventLoop, win: Arc<Window>, mut s: State) {
[INFO] [stdout]     |                                           ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn run_event_loop<Window>(ev: EventLoop, win: Arc<Window>, mut s: State) {
[INFO] [stdout]     |                  ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:276:43
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn run_event_loop(ev: EventLoop, win: Arc<Window>, mut s: State) {
[INFO] [stdout]     |                                           ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn run_event_loop<Window>(ev: EventLoop, win: Arc<Window>, mut s: State) {
[INFO] [stdout]     |                  ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ControlFlow`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:278:19
[INFO] [stdout]     |
[INFO] [stdout] 278 |         *control_flow = ControlFlow::Wait;
[INFO] [stdout]     |                         ^^^^^^^^^^^ use of undeclared type `ControlFlow`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use core::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use std::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ControlFlow`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:278:19
[INFO] [stdout]     |
[INFO] [stdout] 278 |         *control_flow = ControlFlow::Wait;
[INFO] [stdout]     |                         ^^^^^^^^^^^ use of undeclared type `ControlFlow`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use core::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use std::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ControlFlow`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:294:52
[INFO] [stdout]     |
[INFO] [stdout] 294 |                 WindowEvent::CloseRequested => *control_flow = ControlFlow::Exit,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^ use of undeclared type `ControlFlow`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use core::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use std::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ControlFlow`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:294:52
[INFO] [stdout]     |
[INFO] [stdout] 294 |                 WindowEvent::CloseRequested => *control_flow = ControlFlow::Exit,
[INFO] [stdout]     |                                                                ^^^^^^^^^^^ use of undeclared type `ControlFlow`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use core::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use std::ops::ControlFlow;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `Particle` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:309:10
[INFO] [stdout]     |
[INFO] [stdout] 309 |     let p = Particle {
[INFO] [stdout]     |             ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 1   + use grav3_lib::prelude::Particle;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `Particle` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:309:10
[INFO] [stdout]     |
[INFO] [stdout] 309 |     let p = Particle {
[INFO] [stdout]     |             ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 1   + use grav3_lib::prelude::Particle;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `hello` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:56:2
[INFO] [stdout]    |
[INFO] [stdout] 56 |     hello();
[INFO] [stdout]    |     ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `hello` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:56:2
[INFO] [stdout]    |
[INFO] [stdout] 56 |     hello();
[INFO] [stdout]    |     ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `uvec2` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let size = uvec2(args.width, args.height);
[INFO] [stdout]    |                ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `init_gl_window` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:62:18
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let (win, ev) = init_gl_window(w, h, "gravity");
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `uvec2` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let size = uvec2(args.width, args.height);
[INFO] [stdout]    |                ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `init_gl_window` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:62:18
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let (win, ev) = init_gl_window(w, h, "gravity");
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `uvec2` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:93:14
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let size = uvec2(args.width, args.height);
[INFO] [stdout]    |                    ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Program`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let p_render = Program::new(&[
[INFO] [stdout]    |                        ^^^^^^^ use of undeclared type `Program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `uvec2` in this scope
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:93:14
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let size = uvec2(args.width, args.height);
[INFO] [stdout]    |                    ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Shader::new_vert(include_str!("texture.vert")),
[INFO] [stdout]    |             ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 |             Shader::new_frag(include_str!("draw.frag")),
[INFO] [stdout]    |             ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Program`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let p_render = Program::new(&[
[INFO] [stdout]    |                        ^^^^^^^ use of undeclared type `Program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Shader::new_vert(include_str!("texture.vert")),
[INFO] [stdout]    |             ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Texture`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             density: Texture::new2d(RGBA8UI, size).filter_nearest(),
[INFO] [stdout]     |                      ^^^^^^^ use of undeclared type `Texture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]   --> grav3_lib/src/bin/grav3_gl.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 |             Shader::new_frag(include_str!("draw.frag")),
[INFO] [stdout]    |             ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Texture`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             density: Texture::new2d(RGBA8UI, size).filter_nearest(),
[INFO] [stdout]     |                      ^^^^^^^ use of undeclared type `Texture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Texture`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:115:3
[INFO] [stdout]     |
[INFO] [stdout] 115 |         Texture::new2d(RG32F, size).sub_image2d(0, 0, 0, size.0, size.1, RG, FLOAT, data)
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Texture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Texture`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:115:3
[INFO] [stdout]     |
[INFO] [stdout] 115 |         Texture::new2d(RG32F, size).sub_image2d(0, 0, 0, size.0, size.1, RG, FLOAT, data)
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Texture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:134:14
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 134 |                 pos.push(vec2(x, y));
[INFO] [stdout]     |                          ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:134:14
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 134 |                 pos.push(vec2(x, y));
[INFO] [stdout]     |                          ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:135:14
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 135 |                 vel.push(vec2(y / r + 0.01 * irand(), -x / r - 0.01 * irand())); // TODO
[INFO] [stdout]     |                          ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:135:14
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 135 |                 vel.push(vec2(y / r + 0.01 * irand(), -x / r - 0.01 * irand())); // TODO
[INFO] [stdout]     |                          ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `glClearColor` in this scope
[INFO] [stdout]     --> grav3_lib/src/bin/grav3_gl.rs:157:3
[INFO] [stdout]      |
[INFO] [stdout] 157  |         glClearColor(0.5, 0.5, 0.5, 1.0);
[INFO] [stdout]      |         ^^^^^^^^^^^^ help: a function with a similar name exists: `ClearColor`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/target/debug/build/gl-f44d8983290ad210/out/bindings.rs:1618:13
[INFO] [stdout]      |
[INFO] [stdout] 1618 | ...     pub unsafe fn ClearColor(red: types::GLfloat, green: types::GLfloat, blue: types::GLfloat, alpha: types::GLfloat) -> () { __gl_im...
[INFO] [stdout]      |         ----------------------------------------------------------------------------------------------------------------------- similarly named function `ClearColor` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `glClearColor` in this scope
[INFO] [stdout]     --> grav3_lib/src/bin/grav3_gl.rs:157:3
[INFO] [stdout]      |
[INFO] [stdout] 157  |         glClearColor(0.5, 0.5, 0.5, 1.0);
[INFO] [stdout]      |         ^^^^^^^^^^^^ help: a function with a similar name exists: `ClearColor`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/target/debug/build/gl-f44d8983290ad210/out/bindings.rs:1618:13
[INFO] [stdout]      |
[INFO] [stdout] 1618 | ...     pub unsafe fn ClearColor(red: types::GLfloat, green: types::GLfloat, blue: types::GLfloat, alpha: types::GLfloat) -> () { __gl_im...
[INFO] [stdout]      |         ----------------------------------------------------------------------------------------------------------------------- similarly named function `ClearColor` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `glClear` in this scope
[INFO] [stdout]     --> grav3_lib/src/bin/grav3_gl.rs:158:3
[INFO] [stdout]      |
[INFO] [stdout] 158  |         glClear(gl::COLOR_BUFFER_BIT);
[INFO] [stdout]      |         ^^^^^^^ help: a function with a similar name exists: `Clear`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/target/debug/build/gl-f44d8983290ad210/out/bindings.rs:1604:13
[INFO] [stdout]      |
[INFO] [stdout] 1604 | ...   pub unsafe fn Clear(mask: types::GLbitfield) -> () { __gl_imports::mem::transmute::<_, extern "system" fn(types::GLbitfield) -> ()>...
[INFO] [stdout]      |       -------------------------------------------------- similarly named function `Clear` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `glClear` in this scope
[INFO] [stdout]     --> grav3_lib/src/bin/grav3_gl.rs:158:3
[INFO] [stdout]      |
[INFO] [stdout] 158  |         glClear(gl::COLOR_BUFFER_BIT);
[INFO] [stdout]      |         ^^^^^^^ help: a function with a similar name exists: `Clear`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/target/debug/build/gl-f44d8983290ad210/out/bindings.rs:1604:13
[INFO] [stdout]      |
[INFO] [stdout] 1604 | ...   pub unsafe fn Clear(mask: types::GLbitfield) -> () { __gl_imports::mem::transmute::<_, extern "system" fn(types::GLbitfield) -> ()>...
[INFO] [stdout]      |       -------------------------------------------------- similarly named function `Clear` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `glDrawArrays` in this scope
[INFO] [stdout]     --> grav3_lib/src/bin/grav3_gl.rs:164:3
[INFO] [stdout]      |
[INFO] [stdout] 164  |         glDrawArrays(gl::TRIANGLE_STRIP, 0, 4);
[INFO] [stdout]      |         ^^^^^^^^^^^^ help: a function with a similar name exists: `DrawArrays`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/target/debug/build/gl-f44d8983290ad210/out/bindings.rs:1819:13
[INFO] [stdout]      |
[INFO] [stdout] 1819 |             pub unsafe fn DrawArrays(mode: types::GLenum, first: types::GLint, count: types::GLsizei) -> () { __gl_imports::mem::transmut...
[INFO] [stdout]      |             ----------------------------------------------------------------------------------------------- similarly named function `DrawArrays` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `glDrawArrays` in this scope
[INFO] [stdout]     --> grav3_lib/src/bin/grav3_gl.rs:164:3
[INFO] [stdout]      |
[INFO] [stdout] 164  |         glDrawArrays(gl::TRIANGLE_STRIP, 0, 4);
[INFO] [stdout]      |         ^^^^^^^^^^^^ help: a function with a similar name exists: `DrawArrays`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/target/debug/build/gl-f44d8983290ad210/out/bindings.rs:1819:13
[INFO] [stdout]      |
[INFO] [stdout] 1819 |             pub unsafe fn DrawArrays(mode: types::GLenum, first: types::GLint, count: types::GLsizei) -> () { __gl_imports::mem::transmut...
[INFO] [stdout]      |             ----------------------------------------------------------------------------------------------- similarly named function `DrawArrays` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `uvec3` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:169:22
[INFO] [stdout]     |
[INFO] [stdout] 169 |         p.compute_and_sync(uvec3(xy.0, xy.1, 1))
[INFO] [stdout]     |                            ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `uvec3` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:169:22
[INFO] [stdout]     |
[INFO] [stdout] 169 |         p.compute_and_sync(uvec3(xy.0, xy.1, 1))
[INFO] [stdout]     |                            ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Program`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:242:3
[INFO] [stdout]     |
[INFO] [stdout] 242 |         Program::new(&[Shader::new_comp(src)])
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Program`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:242:3
[INFO] [stdout]     |
[INFO] [stdout] 242 |         Program::new(&[Shader::new_comp(src)])
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:242:18
[INFO] [stdout]     |
[INFO] [stdout] 242 |         Program::new(&[Shader::new_comp(src)])
[INFO] [stdout]     |                        ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:242:18
[INFO] [stdout]     |
[INFO] [stdout] 242 |         Program::new(&[Shader::new_comp(src)])
[INFO] [stdout]     |                        ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:248:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 248 |             vec2(-1.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:248:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 248 |             vec2(-1.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 249 |             vec2(-1.0, -1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 249 |             vec2(-1.0, -1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:250:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 250 |             vec2(1.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:250:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 250 |             vec2(1.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:251:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 251 |             vec2(1.0, -1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Buffer`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:253:19
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let v_pos_buf = Buffer::new(&v_pos, 0);
[INFO] [stdout]     |                         ^^^^^^ use of undeclared type `Buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:251:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 251 |             vec2(1.0, -1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Buffer`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:253:19
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let v_pos_buf = Buffer::new(&v_pos, 0);
[INFO] [stdout]     |                         ^^^^^^ use of undeclared type `Buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:257:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 257 |             vec2(0.0, 0.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:257:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 257 |             vec2(0.0, 0.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 258 |             vec2(0.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 258 |             vec2(0.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:259:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 259 |             vec2(1.0, 0.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:259:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 259 |             vec2(1.0, 0.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:260:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 260 |             vec2(1.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Buffer`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:262:20
[INFO] [stdout]     |
[INFO] [stdout] 262 |         let v_texc_buf = Buffer::new(&v_texc, 0);
[INFO] [stdout]     |                          ^^^^^^ use of undeclared type `Buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:260:4
[INFO] [stdout]     |
[INFO] [stdout] 6   | fn vec(x: f64, y: f64) -> vec {
[INFO] [stdout]     | ----------------------------- similarly named function `vec` defined here
[INFO] [stdout] ...
[INFO] [stdout] 260 |             vec2(1.0, 1.0),
[INFO] [stdout]     |             ^^^^ help: a function with a similar name exists: `vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Buffer`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:262:20
[INFO] [stdout]     |
[INFO] [stdout] 262 |         let v_texc_buf = Buffer::new(&v_texc, 0);
[INFO] [stdout]     |                          ^^^^^^ use of undeclared type `Buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VertexArray`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:266:3
[INFO] [stdout]     |
[INFO] [stdout] 266 |         VertexArray::create()
[INFO] [stdout]     |         ^^^^^^^^^^^ use of undeclared type `VertexArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VertexArray`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:266:3
[INFO] [stdout]     |
[INFO] [stdout] 266 |         VertexArray::create()
[INFO] [stdout]     |         ^^^^^^^^^^^ use of undeclared type `VertexArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `sizeof` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:269:45
[INFO] [stdout]     |
[INFO] [stdout] 269 |             .vertex_buffer(v_pos_attr, v_pos_buf, 0, sizeof(v_pos[0]))
[INFO] [stdout]     |                                                      ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `sizeof` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:269:45
[INFO] [stdout]     |
[INFO] [stdout] 269 |             .vertex_buffer(v_pos_attr, v_pos_buf, 0, sizeof(v_pos[0]))
[INFO] [stdout]     |                                                      ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `sizeof` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:272:47
[INFO] [stdout]     |
[INFO] [stdout] 272 |             .vertex_buffer(v_texc_attr, v_texc_buf, 0, sizeof(v_texc[0]))
[INFO] [stdout]     |                                                        ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `sizeof` in this scope
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:272:47
[INFO] [stdout]     |
[INFO] [stdout] 272 |             .vertex_buffer(v_texc_attr, v_texc_buf, 0, sizeof(v_texc[0]))
[INFO] [stdout]     |                                                        ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 |                 WindowEvent::CursorEntered { .. } => s.on_cursor_entered(),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 |                 WindowEvent::CursorLeft { .. } => s.on_cursor_left(),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:294:5
[INFO] [stdout]     |
[INFO] [stdout] 294 |                 WindowEvent::CloseRequested => *control_flow = ControlFlow::Exit,
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 |             Event::UserEvent(_) => s.on_user_event(&win),
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:282:4
[INFO] [stdout]     |
[INFO] [stdout] 282 |             Event::LoopDestroyed => return,
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 |                 WindowEvent::MouseInput { state, button, .. } => s.on_mouse_input(button, state),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:286:5
[INFO] [stdout]     |
[INFO] [stdout] 286 |                 WindowEvent::MouseWheel { delta, .. } => s.on_mouse_wheel(delta),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |                 WindowEvent::KeyboardInput { input, .. } => {
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:284:5
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 WindowEvent::CursorMoved { position, .. } => s.on_cursor_moved((position.x, position.y)),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:283:4
[INFO] [stdout]     |
[INFO] [stdout] 283 |             Event::WindowEvent { event, .. } => match event {
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:280:4
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Event::RedrawRequested(_) => s.on_redraw_requested(&win),
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 79 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0422, E0425, E0432, E0433, E0463.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 |                 WindowEvent::CursorEntered { .. } => s.on_cursor_entered(),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 |                 WindowEvent::CursorLeft { .. } => s.on_cursor_left(),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:294:5
[INFO] [stdout]     |
[INFO] [stdout] 294 |                 WindowEvent::CloseRequested => *control_flow = ControlFlow::Exit,
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:281:4
[INFO] [stdout]     |
[INFO] [stdout] 281 |             Event::UserEvent(_) => s.on_user_event(&win),
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:282:4
[INFO] [stdout]     |
[INFO] [stdout] 282 |             Event::LoopDestroyed => return,
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 |                 WindowEvent::MouseInput { state, button, .. } => s.on_mouse_input(button, state),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:286:5
[INFO] [stdout]     |
[INFO] [stdout] 286 |                 WindowEvent::MouseWheel { delta, .. } => s.on_mouse_wheel(delta),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |                 WindowEvent::KeyboardInput { input, .. } => {
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowEvent`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:284:5
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 WindowEvent::CursorMoved { position, .. } => s.on_cursor_moved((position.x, position.y)),
[INFO] [stdout]     |                 ^^^^^^^^^^^ use of undeclared type `WindowEvent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:283:4
[INFO] [stdout]     |
[INFO] [stdout] 283 |             Event::WindowEvent { event, .. } => match event {
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Event`
[INFO] [stdout]    --> grav3_lib/src/bin/grav3_gl.rs:280:4
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Event::RedrawRequested(_) => s.on_redraw_requested(&win),
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 79 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0422, E0425, E0432, E0433, E0463.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `grav3_lib` (bin "grav3_gl" test) due to 80 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `grav3_lib` (bin "grav3_gl") due to 80 previous errors
[INFO] running `Command { std: "docker" "inspect" "35ee9725599cbc2b3bcb40a9e07c090811aa1471d8c5f378a477ac3ea14b5513", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "35ee9725599cbc2b3bcb40a9e07c090811aa1471d8c5f378a477ac3ea14b5513", kill_on_drop: false }`
[INFO] [stdout] 35ee9725599cbc2b3bcb40a9e07c090811aa1471d8c5f378a477ac3ea14b5513
